#pragma once
#include "DXAMLCommon.h"
#include "IObject.h"


struct IManagedInteropObject : 
	public IObject
{
public:
	/*0002 0x00000002 +00000008*/ virtual XUINT32   FinalizerRelease() = 0;
	/*0003 0x00000003 +00000012*/ virtual HRESULT OnManagedPeerCreated(XBOOL fIsCustomDOType, XBOOL fIsManagedPeerPegged) = 0;
	/*0004 0x00000004 +00000016*/ virtual HRESULT DisconnectManagedPeer() = 0;
	/*0005 0x00000005 +00000020*/ virtual XBOOL   IsDependencyObject() = 0;
	/*0006 0x00000006 +00000024*/ virtual void    PreOnManagedPeerCreated() = 0;
	/*0007 0x00000007 +00000028*/ virtual void    PostOnManagedPeerCreated() = 0;
};